package org.ehe.business.bom.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.ehe.business.bom.domain.BomVersion;

import java.util.List;

/**
 * @author :zhangnn
 * @className :BomVersionService
 * @description: TODO
 * @date 2025-07-30 13:53:42
 */
public interface BomVersionService extends IService<BomVersion> {

    /**
     * 获取最近版本
     * @param sourceBomId
     * @return
     */
    BomVersion getCurrentVersion(Long sourceBomId);

    /**
     * 创建新版本
     * @param bomId
     * @param changeReason
     * @param changeDescription
     * @return
     */
    BomVersion createNewVersion(Long bomId, String changeReason, String changeDescription);

    /**
     * 获取BOM的草稿版本
     * @param id
     * @return
     */
    BomVersion getDraftVersion(Long id);

    /**
     * 获取历史版本信息
     * @param bomId
     * @return
     */
    List<BomVersion> getVersionHistory(Long bomId);

    /**
     * 获取版本名称
     * @return
     */
    String getVersionStatusName(String status);
}
